#!/bin/bash
################### 自动化安装nginx脚本 #####################
# 执行之前：
# 	1. 去除特殊字符：sed -i 's/\r//' install_nginx.sh
# 	2. 添加执行权限：chmod +x install_nginx.sh
# 	3. 如果下载速度比较慢，可以提前将以下安装包上传到/opt/soft目录下：nginx-1.18.0.tar.gz、openssl-1.1.1.tar.gz、pcre-8.37.tar.gz、zlib-1.2.7.tar.gz
# 执行命令：./install_nginx.sh
# 执行之后：
# 脚本说明：
########################################################

echo "----------0.准备环境----------------"
# 如果未安装openssl，则执行：
yum -y install gcc zlib zlib-devel gcc-c++ libtool pcre-devel openssl openssl-devel
# 如果已经安装了openssl，则执行：
#yum -y install gcc zlib zlib-devel gcc-c++ libtool pcre-devel
echo "准备环境OK"

echo "----------1.安装pcre----------------"
cd /opt/soft
# 如果下载比较慢，也可以提前上传安装包到/opt/soft，然后将该行命令注释掉
#wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz --no-check-certificate
# 判断安装包是否存在
FILE_PATH=/opt/soft/pcre-8.37.tar.gz
if [ -e $FILE_PATH ]; then
    echo "$FILE_PATH存在"
else
    echo "$FILE_PATH不存在"
    exit 1
fi
# 解压
tar -xvf pcre-8.37.tar.gz
cd pcre-8.37
# 配置
./configure
# 编译
make
# 安装
make install
# 查看pcre是否安装成功
echo "pcre-config --version: " $(pcre-config --version)

echo "----------2.安装nginx----------------"
cd /opt/soft
# 如果下载比较慢，也可以提前上传安装包到/opt/soft，然后将该行命令注释掉
# wget https://nginx.org/download/nginx-1.18.0.tar.gz
# 判断安装包是否存在
FILE_PATH=/opt/soft/nginx-1.18.0.tar.gz
if [ -e $FILE_PATH ]; then
    echo "$FILE_PATH存在"
else
    echo "$FILE_PATH不存在"
    exit 1
fi
# 解压
tar -xvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
# 配置（带上http_ssl模块）
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_realip_module
# 编译
make
# 安装
make install
echo "install nginx success!"

echo "----------3.测试nginx是否安装成功----------------"
cd /usr/local/nginx/sbin
./nginx  -V

echo "----------4.启动nginx----------------"
./nginx
echo "start nginx success!"